/******************************************
Nodo.java
Universidad del Valle de Guatemala
Algoritmos y Estructura de Datos
Autor:
    Martín Guzmán
Fecha: 15 de agosto de 2009
Descripción: Conteiene referencias a las
 * distintas ramificaciones de un determinado
 * árbol binario. Tiene un hijo derecho, uno
 * izquierdo, una referencia a un padre
 * y un nombre (o bien valor)
*******************************************/

public class Nodo<G> {
    private G nombre;
    private Nodo<G> padre;
    private Nodo<G> hijo_derecho;
    private Nodo<G> hijo_izquierdo;

    public Nodo(G nombre){
        this.nombre=nombre;
        this.hijo_derecho=null;
        this.hijo_izquierdo=null;
        this.padre=null;
    }

    public G getNombre() {
        return nombre;
    }

    public void setNombre(G nombre) {
        this.nombre = nombre;
    }


    public Nodo<G> getHijo_derecho() {
        return hijo_derecho;
    }


    public void setHijo_derecho(Nodo<G> hijo_derecho) {
        this.hijo_derecho = hijo_derecho;
    }


    public Nodo<G> getHijo_izquierdo() {
        return hijo_izquierdo;
    }


    public void setHijo_izquierdo(Nodo<G> hijo_izquierdo) {
        this.hijo_izquierdo = hijo_izquierdo;
    }

    public String toString(){
        String temp=nombre.toString();
        return temp;
    }


    public Nodo<G> getPadre() {
        return padre;
    }


    public void setPadre(Nodo<G> padre) {
        this.padre = padre;
    }

}
